package org.jiucheng.template.grammar;

import java.util.ArrayList;
import java.util.List;
import java.util.Map;

public class Root implements Grammar, GrammarFile {

    private String file;

    private List<Grammar> grammars = new ArrayList<Grammar>();

    public void add(Grammar grammar) {
        grammars.add(grammar);
    }

    public void addAll(List<Grammar> grammars) {
        this.grammars.addAll(grammars);
    }

    public void exec(Map<String, Object> context, StringBuilder sb) {
        for (Grammar grammar : grammars) {
            grammar.exec(context, sb);
        }
    }

    public void setFile(String file) {
        this.file = file;
    }

    public String getFile() {
        return file;
    }
}
